/*
 * function ListNode(x){
 *   this.val = x;
 *   this.next = null;
 * }
 */
/**
 * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
 *
 * 
 * @param pHead ListNode类 
 * @param k int整型 
 * @return ListNode类
 */
 function FindKthToTail( pHead ,  k ) {
  // write code here
  // 如果输入的链表为空
  if(!pHead) return null
  // 如果驶入的链表只有一个节点
  // 定义一个变量记录链表长度
  let count = 0
  // 定义一个节点 代表头节点
  var newHead = pHead
  while(newHead){
      count++
      // 头结点等于下一个节点
      newHead = newHead.next
  }
  // 5 1 => 5
  // 5 2 => 4
  // count - k + 1
  for(let i = 0; i < count - k ; i++){
    pHead = pHead.next
  }
  if(count < k) return newHead
  return pHead
}
module.exports = {
  FindKthToTail : FindKthToTail
};